package com.haoyun.mirage.user.mapper;

import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.haoyun.common.utils.Query;
import com.haoyun.mirage.user.model.dto.RoleDTO;
import com.haoyun.mirage.user.model.entity.SysRole;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

/**
 * <p>
 * Mapper 接口
 * </p>
 *
 * @author twg
 * @since 2018-05-30
 */
public interface SysRoleMapper extends BaseMapper<SysRole> {

    List<RoleDTO> findRolesByDeptIds(@Param("deptIds") String... deptIds);

    /**
     * 分页查询角色列表含有部门信息
     *
     * @param query     查询对象
     * @param condition 条件
     * @return List
     */
    List<RoleDTO> findRoleWithDeptPage(Query<Object> query, Map<String, Object> condition);

    /**
     * 通过部门ID查询角色列表
     *
     * @param deptId 部门ID
     * @return 角色列表
     */
    List<RoleDTO> findByDeptId(@Param("deptId") Long deptId);


    RoleDTO getRoleWithDeptByRoleId(@Param("roleId") Long roleId);

}
